Semantics-Driven DSL Design
نویسنده
چکیده
Convention dictates that the design of a language begins with its syntax. The authors of this chapter argue that early emphasis should be placed instead on the identification of general, compositional semantic domains, and that grounding the design process in semantics leads to languages with more consistent and more extensible syntax. They demonstrate this semantics-driven design process through the design and implementation of a DSL for defining and manipulating calendars, using Haskell as a metalanguage to support this discussion. The authors emphasize the importance of compositionality in semantics-driven language design, and describe a set of language operators that support an incremental and modular design process.
منابع مشابه
On the Formal Execution of UML and DSL Models
Model-Driven Engineering intensively uses models and model transformations. Transformation tools ensure that the target model conforms to the target metamodel, so that it is syntactically correct. However, there is few assistance, or none at all, to guarantee that the semantics is preserved during the transformation. This is mainly due to the absence of an explicit semantics within the models. ...
متن کاملEssay on Semantics Definition in MDE - An Instrumented Approach for Model Verification
In the context of MDE (Model-Driven Engineering), our objective is to define the semantics for a given DSL (Domain Specific Language) either to simulate its models or to check properties on them using model-checking techniques. In both cases, the purpose is to formalize the DSL semantics as it is known by the DSL designer but often in an informal way. After several experiments to define operati...
متن کاملdSL, a Language and Environment for the Design of Distributed Industrial Controllers
We present dSL (distributed Supervision Language), a language and environment dedicated to the specification of industrial controllers. dSL extends an existing language used in the industrial world to allow transparent code distribution. We study other existing solutions, and argue for the need of dSL. Next, we define dSL syntactically and semantically, and prove some remarkable properties on i...
متن کاملA Practical Experiment to Give Dynamic Semantics to a DSL for Telephony Services Development
Domain-Specific Languages (DSLs) are high level languages defined for combining expressivity and simplicity by means of constructs which are close to the problem domain and distant from the intricacies of underlying software implementation constraints. In contrast with general purpose languages, DSLs are typically not useful for generic tasks in multiple application domains. The specification o...
متن کاملA Domain-Specific Language for Incremental and Modular Design of Large-Scale Verifiably-Safe Flow Networks (Preliminary Report)
We define a domain-specific language (DSL) to inductively assemble flow networks from small networks or modules to produce arbitrarily large ones, with interchangeable functionally-equivalent parts. Our small networks or modules are “small” only as the building blocks in this inductive definition (there is no limit on their size). Associated with our DSL is a type theory, a system of formal ann...
متن کامل